//package com.example.ccj.b.a;
//
//import android.annotation.SuppressLint;
//import android.graphics.Color;
//import android.os.Bundle;
//import android.os.Handler;
//import android.os.Message;
//import android.util.Log;
//import android.view.View;
//import android.widget.ImageView;
//import android.widget.TextView;
//
//import androidx.annotation.NonNull;
//
//import com.amap.api.location.AMapLocation;
//import com.amap.api.location.AMapLocationClient;
//import com.amap.api.location.AMapLocationClientOption;
//import com.amap.api.location.AMapLocationListener;
//import com.amap.api.maps2d.AMap;
//import com.amap.api.maps2d.CameraUpdateFactory;
//import com.amap.api.maps2d.CoordinateConverter;
//import com.amap.api.maps2d.LocationSource;
//import com.amap.api.maps2d.MapView;
//import com.amap.api.maps2d.UiSettings;
//import com.amap.api.maps2d.model.BitmapDescriptor;
//import com.amap.api.maps2d.model.BitmapDescriptorFactory;
//import com.amap.api.maps2d.model.CameraPosition;
//import com.amap.api.maps2d.model.LatLng;
//import com.amap.api.maps2d.model.LatLngBounds;
//import com.amap.api.maps2d.model.Marker;
//import com.amap.api.maps2d.model.MarkerOptions;
//import com.amap.api.maps2d.model.MyLocationStyle;
//import com.example.ccj.R;
//import com.example.ccj.u.map.LocationUtil;
//
//
//import java.util.ArrayList;
//import java.util.List;
//
//
//public abstract class ShowGaoDeMaps extends BaseActivity implements  AMapLocationListener, AMap.OnMarkerClickListener, AMap.OnMarkerDragListener, View.OnClickListener {
//    private AMap aMap = null;
//    private AMapLocationClient mLocationClient  = null;
//    private LocationSource.OnLocationChangedListener mListener = null;
//    public AMapLocationListener mLocationListener = new AMapLocationListener() {
//        @Override
//        public void onLocationChanged(AMapLocation aMapLocation) {
//            moveMap(aMapLocation.getLatitude(),aMapLocation.getLongitude(),aMap.getCameraPosition().zoom,
//                    aMap.getCameraPosition().tilt,aMap.getCameraPosition().bearing);
//        }
//    };
//
//    private AMapLocationClientOption mLocationOption = null;
//    private UiSettings mUiSettings = null;
//    private MapView mMapView = null;
//    private ImageView mImageLayer;//自定义图层开关
//    private boolean isShowLayer = true;//是否显示图层
//    private List<MarkerInformation> markerInformations;
//
//
//    @Override
//    protected void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//        setContentView(R.layout.custom_show_gao_de_maps);
//
//        mMapView = findViewById(R.id.show_gaode_maps_map);
//        //在fragment执行onCreate时执行mMapView.onCreate(savedInstanceState)，创建地图
//        mMapView.onCreate(savedInstanceState);
//        markerInformations = new ArrayList<>();
//        try {
//            init();
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//
//        //申请地图的权限
//        PowerUtils.getMapPermission(ShowGaoDeMaps.this, new PowerUtils.isPermission() {
//            @Override
//            public void onPermission(boolean b) {
//            }
//        });
//    }
//
//    /**
//     * 初始化
//     */
//    private void init() throws Exception {
//        //初始化控制显示隐藏标记点样式控件
//        mImageLayer = findViewById(R.id.show_gaode_maps_map_show_style);
//        ImageView selectlayer = findViewById(R.id.show_gaode_maps_map_selectlayer);
//        satellite = findViewById(R.id.show_gaode_maps_map_satellite);
//        putong = findViewById(R.id.show_gaode_maps_map_putong);
//        night = findViewById(R.id.show_gaode_maps_map_night);
//        location = findViewById(R.id.show_gaode_maps_location);
//
//        mImageLayer.setOnClickListener(this);
//        selectlayer.setOnClickListener(this);
//        putong.setOnClickListener(this);
//        night.setOnClickListener(this);
//        location.setOnClickListener(this);
//        satellite.setOnClickListener(this);
//
//        //初始化地图控制器对象及界面
//        initAMap();
//    }
//
//    private ImageView satellite,putong,night,location;
//    private boolean isOpen;
//    private boolean isOpenLoacation = true;
//
//    @SuppressLint("NonConstantResourceId")
//    @Override
//    public void onClick(View v) {
//        int id = v.getId();
//        if (id == R.id.show_gaode_maps_location) {
//            if (isOpenLoacation) {
//                aMap.setMyLocationEnabled(true);
//                mLocationClient.startLocation();
//                location.setImageResource(R.mipmap.def_map_location_start);
//                isOpenLoacation = false;
//            } else {
//                aMap.setMyLocationEnabled(false);
//                mLocationClient.stopLocation();
//                location.setImageResource(R.mipmap.def_map_location_stop);
//                isOpenLoacation = true;
//            }
//        } else if (id == R.id.show_gaode_maps_map_show_style) {
//            NorDialog.showWaiting(ShowGaoDeMaps.this, "正在切换ing......");
//            if (isShowLayer) {
//                mImageLayer.setImageResource(R.mipmap.def_map_marker_style_c);
//                handler.sendEmptyMessage(noHaveMapStyle);
//            } else {
//                mImageLayer.setImageResource(R.mipmap.def_map_marker_style_s);
//                handler.sendEmptyMessage(haveMapStyle);
//            }
//        } else if (id == R.id.show_gaode_maps_map_selectlayer) {
//            if (isOpen) {
//                satellite.setVisibility(View.GONE);
//                putong.setVisibility(View.GONE);
//                night.setVisibility(View.GONE);
//                isOpen = false;
//            } else {
//                satellite.setVisibility(View.VISIBLE);
//                putong.setVisibility(View.VISIBLE);
//                night.setVisibility(View.VISIBLE);
//                isOpen = true;
//            }
//        } else if (id == R.id.show_gaode_maps_map_satellite) {
//            satellite.setVisibility(View.GONE);
//            putong.setVisibility(View.GONE);
//            night.setVisibility(View.GONE);
//            showAmapTypeSatellite();
//            isOpen = false;
//        } else if (id == R.id.show_gaode_maps_map_putong) {
//            satellite.setVisibility(View.GONE);
//            putong.setVisibility(View.GONE);
//            night.setVisibility(View.GONE);
//            showAmapTypeNormal();
//            isOpen = false;
//        } else if (id == R.id.show_gaode_maps_map_night) {
//            satellite.setVisibility(View.GONE);
//            putong.setVisibility(View.GONE);
//            night.setVisibility(View.GONE);
//            showAmapTypeNight();
//            isOpen = false;
//        }
//    }
//
//    private static final int haveMapStyle = 1001;//显示样式
//    private static final int noHaveMapStyle = 1002;//不显示样式
//    /**
//     * 消息通知，主要用来多线程实现标记点样式的显示和隐藏
//     */
//    Handler handler = new Handler(new Handler.Callback() {
//        @Override
//        public boolean handleMessage(@NonNull Message msg) {
//            switch (msg.what){
//                case haveMapStyle:
//                    addMyViewMarkers(false);
//                    NorDialog.stopWaiting();
//                    break;
//                case noHaveMapStyle:
//                    if (viewPoiOverlay != null) viewPoiOverlay.removeFromMap();
//                    addMarkers();
//                    NorDialog.stopWaiting();
//                    break;
//            }
//            return true;
//        }
//    });
//
//    @Override
//    public void setMarkers(List<MarkerInformation> markerInformations) {
//        this.markerInformations = markerInformations;
//    }
//
//    /**
//     * 定位监听
//     * @param aMapLocation
//     */
//    @Override
//    public void onLocationChanged(AMapLocation aMapLocation) {
//        if (mListener != null && aMapLocation != null) {
//            if (aMapLocation != null && aMapLocation.getErrorCode() == 0) {
//                mListener.onLocationChanged(aMapLocation);// 显示系统小蓝点
//
////                double[] GPS1 = DataTool.gcj02towgs84(aMapLocation.getLongitude(),aMapLocation.getLatitude());
//////                ToastUtil.ShowNowMsg(getApplicationContext(),aMapLocation.getLatitude()+","+aMapLocation.getLongitude()+"\n"
//////                +GPS1[0]+GPS1[1]+"\n"+aMapLocation.getAddress());
//            } else {
//                String errText = "定位失败," + aMapLocation.getErrorCode()+ ": " + aMapLocation.getErrorInfo();
//                Log.e("AmapErr",errText);
//                MyToast.show(this,"定位失败," + errText);
//
//            }
//        }
//    }
//
//    /**
//     * 初始化地图控件
//     */
//    @Override
//    public void initAMap() throws Exception {
//        if (aMap == null) {
//            aMap = mMapView.getMap();
//
//            MyLocationStyle myLocationStyle;
//            myLocationStyle = new MyLocationStyle();//初始化定位蓝点样式类myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE);//连续定位、且将视角移动到地图中心点，定位点依照设备方向旋转，并且会跟随设备移动。（1秒1次定位）如果不设置myLocationType，默认也会执行此种模式。
//            myLocationStyle.interval(2000); //设置连续定位模式下的定位间隔，只在连续定位模式下生效，单次定位模式下不会生效。单位为毫秒。
//            myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_FOLLOW_NO_CENTER);
//            myLocationStyle.showMyLocation(true);
//            aMap.setMyLocationStyle(myLocationStyle);//设置定位蓝点的Style
//            //aMap.getUiSettings().setMyLocationButtonEnabled(true);设置默认定位按钮是否显示，非必需设置。
////            aMap.setMyLocationEnabled(true);// 设置为true表示启动显示定位蓝点，false表示隐藏定位蓝点并不进行定位，默认是false。
//
////            //通过aMap对象设置定位数据源的监听
////            aMap.setLocationSource(this);
//            // 绑定 Marker 被点击事件
//            aMap.setOnMarkerClickListener(this);
//            // 绑定marker拖拽事件
//            aMap.setOnMarkerDragListener(this);
//            //初始点坐标及地图级别
////            LatLng latLng = new LatLng(40.37124,116.67533);
////            aMap.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition(
////                    latLng, 13, 30, 0)));
//            mUiSettings = aMap.getUiSettings();
//            mUiSettings.setScaleControlsEnabled(true);
//            //用户控制地图缩放级别的交换按钮是否显示
//            mUiSettings.setZoomControlsEnabled(false);
//            //指南针是否显示
//            mUiSettings.setCompassEnabled(true);
//            //显示比例尺
//            mUiSettings.setScaleControlsEnabled(true);
//            //设置定位按钮可触发定位并显示当前位置
//            mUiSettings.setMyLocationButtonEnabled(true);
//
//            mLocationOption = new AMapLocationClientOption();
//            //初始化定位
//            mLocationClient = new AMapLocationClient(getApplicationContext());
//            //设置定位回调监听
//            mLocationClient.setLocationListener(mLocationListener);
//            mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
//            AMapLocationClientOption option = new AMapLocationClientOption();
//            /**
//             * 设置定位场景，目前支持三种场景（签到、出行、运动，默认无场景）
//             */
//            option.setLocationPurpose(AMapLocationClientOption.AMapLocationPurpose.Sport);
//            if(null != mLocationClient){
//                mLocationClient.setLocationOption(option);
//                //设置场景模式后最好调用一次stop，再调用start以保证场景模式生效
//                mLocationClient.stopLocation();
////                mLocationClient.startLocation();
//            }
//        }
//    }
//
//    /**
//     *  地图移动
//     * @param longitude 经度
//     * @param latitude 纬度
//     * @param level 缩放级别
//     * @param a 倾斜角度
//     * @param b 旋转角度
//     */
//    @Override
//    public void moveMap(double longitude, double latitude, float level, float a, float b) {
//        LatLng latLng = new LatLng(longitude,latitude);
//        aMap.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition(
//                latLng, level, a, b)));
//    }
//
//    /**
//     * 地图移动
//     * @param latLng 经纬度
//     * @param level 缩放级别
//     * @param a 倾斜角度
//     * @param b 旋转角度
//     */
//    @Override
//    public void moveMap(LatLng latLng, float level, float a, float b) {
//        aMap.moveCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition(
//                latLng, level, a, b)));
//    }
//
//    /**
//     * // 定义 Marker 点击事件监听
//     * @param marker 对象被点击时回调的接口
//     * @return 返回 true 则表示接口已响应事件，否则返回false
//     */
//    @Override
//    public boolean onMarkerClick(Marker marker) {
//        double lon = marker.getPosition().longitude;
//        double la = marker.getPosition().latitude;
//        double[]  dd = LocationUtil.gaoDeToGps(lon,la);
//        SelectNavigationMapDialog mapSelect = new SelectNavigationMapDialog(this,dd[0],dd[1],marker.getTitle());
//        mapSelect.show();
//        return false;
//    }
//
//    @Override
//    public void setAmapPosition() {
//
//    }
//
//    /**
//     * 卫星地图
//     */
//    @Override
//    public void showAmapTypeSatellite() {
//        aMap.setMapType(AMap.MAP_TYPE_SATELLITE);// 设置卫星地图模式，aMap是地图控制器对象。
//    }
//
//    /**
//     * 夜间地图
//     */
//    @Override
//    public void showAmapTypeNight() {
//        aMap.setMapType(AMap.MAP_TYPE_SATELLITE);//夜景地图，aMap是地图控制器对象。
//    }
//
//    /**
//     * 导航地图
//     */
//    @Override
//    public void showAmapTypeNavi() {
//        aMap.setMapType(AMap.MAP_TYPE_SATELLITE);
//    }
//
//    /**
//     * 普通地图
//     */
//    @Override
//    public void showAmapTypeNormal() {
//        aMap.setMapType(AMap.MAP_TYPE_NORMAL);
//    }
//
//    /**
//     * 实时路况
//     */
//    @Override
//    public void showTrafficEnabled() {
//        aMap.setTrafficEnabled(true);//显示实时路况图层，aMap是地图控制器对象。
//    }
//
//    /**
//     * 关闭路况显示
//     */
//    @Override
//    public void closeTrafficEnabled() {
//        aMap.setTrafficEnabled(false);//关闭实时路况图层，aMap是地图控制器对象。
//    }
//
//
//    /**
//     * 当这个fragment对用户可见并且正在运行时调用
//     */
//    @Override
//    public void onResume() {
//        super.onResume();
//        //在fragment执行onResume时执行mMapView.onResume ()，重新绘制加载地图
//        mMapView.onResume();
//    }
//
//    /**
//     * 当这个fragment不再使用时调用
//     */
//    @Override
//    public void onDestroy() {
//        super.onDestroy();
//        mMapView.onDestroy();
//    }
//
//    /**
//     * 暂停时调用
//     * 此回调与Activity的OnPause()相绑定，与Activity的OnPause()意义一样。
//     */
//    @Override
//    public void onPause() {
//        super.onPause();
//        //在activity执行onPause时执行mMapView.onPause ()，暂停地图的绘制
//        mMapView.onPause();
//    }
//
//    /**
//     * 暂停时保存当前状态
//     * @param outState
//     */
//    @Override
//    public void onSaveInstanceState(@NonNull Bundle outState) {
//        super.onSaveInstanceState(outState);
//        //在activity执行onSaveInstanceState时执行mMapView.onSaveInstanceState (outState)，保存地图当前的状态
//        mMapView.onSaveInstanceState(outState);
//    }
//
//    // 当marker开始被拖动时回调此方法, 这个marker的位置可以通过getPosition()方法返回。
//    // 这个位置可能与拖动的之前的marker位置不一样。
//    // marker 被拖动的marker对象。
//    @Override
//    public void onMarkerDragStart(Marker marker) {
//
//    }
//
//
//    // 在marker拖动过程中回调此方法, 这个marker的位置可以通过getPosition()方法返回。
//    // 这个位置可能与拖动的之前的marker位置不一样。
//    // marker 被拖动的marker对象。
//    @Override
//    public void onMarkerDragEnd(Marker marker) {
//
//    }
//
//    @Override
//    public List<MarkerInformation> getMarkers() {
//        return markerInformations;
//    }
//
//    //绘制一个点
//    @Override
//    public void addOneMarker(String title, double longitude, double latitude, String only){
//        LatLng desLatLng = getLaLng(longitude,latitude);
//        if (desLatLng == null) return;
//
//        //点样式
//        MarkerOptions markerOption = new MarkerOptions();
//        markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ROSE));
//        markerOption.position(desLatLng);
//        markerOption.title(title);
//        markerOption.draggable(true);
//        markerOption.visible(true);
//
//        Marker marker = aMap.addMarker(markerOption);
//        //显示点信息
//        marker.showInfoWindow();
//        moveMap(desLatLng, 17, 45, 0);
//    }
//
//
//
//
//    /**
//     * 绘制多点
//     */
//    @Override
//    public void addMarkers() {
//        List<MarkerInformation> markers = getMarkers();
//        if (markers == null) {
//            MyToast.show(getApplicationContext(),"未获取到标记点数据");
//            return;
//        }
//        List<MarkerOptions> options = new ArrayList<>();
//        for (MarkerInformation marker: markers) {
//            LatLng desLatLng = getLaLng(marker.getLongitude(),marker.getLatitude());
//            if (desLatLng == null) continue;
//
//            MarkerOptions markerOption = new MarkerOptions();
////            if (marker.getMarkerType() < 0 ) markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
//            if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_ONE)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
//            else if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_TWO)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
//            else if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_THREE)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED));
//            else if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_FOUR)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_YELLOW));
//            else if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_FIVE)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_CYAN));
//            else if (marker.getMarkerType() == MarkerStyle.MARKER_TYPE_FOR_SIX)
//                markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_VIOLET));
//
//            markerOption.visible(true);
//            markerOption.position(desLatLng);
//            markerOption.title(marker.getTitle());
//            markerOption.draggable(true);
//
//            aMap.addMarker(markerOption);
//            options.add(markerOption);
//            //显示点信息
////            marker5.showInfoWindow();
//        }
//        zoomAllMarkerToSpan(options);//移动镜头到当前所有点的中心。
//        isShowLayer = false;
//    }
//
//    /**
//     * 移动镜头到当前所有点的中心。
//     */
//    public void zoomAllMarkerToSpan(List<MarkerOptions> mMarkOp) {
//        try{
//            if (mMarkOp != null && mMarkOp.size() > 0) {
//                if (aMap == null)
//                    return;
//                if(mMarkOp.size()==1){
//                    aMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(mMarkOp.get(0).getPosition().latitude,
//                            mMarkOp.get(0).getPosition().longitude), 18f));
//                }else{
//                    LatLngBounds bounds = getLatLngBounds(mMarkOp);
//                    aMap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, 30));
//                }
//            }
//        }catch(Throwable e){
//            e.printStackTrace();
//        }
//    }
//
//    private LatLngBounds getLatLngBounds(List<MarkerOptions> mMarkOp) {
//        LatLngBounds.Builder b = LatLngBounds.builder();
//        for (int i = 0; i < mMarkOp.size(); i++) {
//            b.include(new LatLng(mMarkOp.get(i).getPosition().latitude,
//                    mMarkOp.get(i).getPosition().longitude));
//        }
//        return b.build();
//    }
//
//
//    ViewPoiOverlay viewPoiOverlay;
//    /**
//     * 地图上画多个自定义显示的点
//     */
//    @Override
//    public void addMyViewMarkers(boolean isZoom) {
//        List<MarkerOptions> optionsArrayList = getAllMarkerOptions();
//        if (optionsArrayList == null) return;
//        viewPoiOverlay = new ViewPoiOverlay(aMap,optionsArrayList);
//        viewPoiOverlay.removeFromMap();
//        viewPoiOverlay.addMarkerOptionsToMap();
//        if (isZoom) viewPoiOverlay.zoomMarkerToSpan();
//        isShowLayer = true;
//    }
//
//
//
//    /**
//     * 获取标记点样式
//     * 根据传入的view，创建BitmapDescriptor对象。用于显示标记点的样式
//     * 可用在继承类中重写此方法，根据某些特性传入值
//     * @param index 标记样式显示文字
//     * @param biaoji 用来标记点的类别分别使用不同的文字颜色
//     * @return
//     */
//    @Override
//    public BitmapDescriptor getBitmapDescriptor(String index, MarkerStyle biaoji, LatLng desLatLng) {
//        View view = null;
//        view = View.inflate(ShowGaoDeMaps.this, R.layout.custom_map_marker_view, null);
//        TextView textView = ((TextView) view.findViewById(R.id.title));
//        view.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                SelectNavigationMapDialog dialog = new SelectNavigationMapDialog(ShowGaoDeMaps.this,desLatLng.longitude,desLatLng.latitude,"选择导航地图");
//                dialog.show();
//            }
//        });
//        if (biaoji == MarkerStyle.MARKER_TYPE_FOR_ONE) textView.setTextColor(Color.BLUE);//黑色
//        else if (biaoji == MarkerStyle.MARKER_TYPE_FOR_TWO) textView.setTextColor(Color.GREEN);//蓝色
//        else if (biaoji == MarkerStyle.MARKER_TYPE_FOR_THREE) textView.setTextColor(Color.RED);//红色
//        else if (biaoji == MarkerStyle.MARKER_TYPE_FOR_FOUR) textView.setTextColor(Color.YELLOW);//黄色
//        else if (biaoji == MarkerStyle.MARKER_TYPE_FOR_FIVE) textView.setTextColor(Color.CYAN);//绿色
//        else if (biaoji == MarkerStyle.MARKER_TYPE_FOR_SIX) textView.setTextColor(Color.BLACK);//青色
//        else textView.setTextColor(Color.BLACK);//青色
//
//        textView.setText(index);
//
//        return  BitmapDescriptorFactory.fromView(view);
//    }
//
//    /**
//     * 获取所有点的信息MarkerOptions
//     * @return
//     */
//    @Override
//    public List<MarkerOptions> getAllMarkerOptions(){
//        List<MarkerInformation> markers = getMarkers();
//        if (markers == null) return null;
//        List<MarkerOptions> optionsArrayList = new ArrayList<>();
//        for (MarkerInformation marker: markers) {
//            LatLng desLatLng = getLaLng(marker.getLongitude(),marker.getLatitude());
//            if (desLatLng == null) continue;
//
//            MarkerOptions markerOption = new MarkerOptions();
////            if (marker.getMarkerType() < 0 ) markerOption.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE));
//            markerOption.icon(getBitmapDescriptor(marker.getTitle(),marker.getMarkerType(),desLatLng));
//            markerOption.visible(true);
//            markerOption.position(desLatLng);
//            markerOption.title(marker.getTitle());
//            markerOption.draggable(true);
//            optionsArrayList.add(markerOption);
//        }
//        return optionsArrayList;
//    }
//
//    /**
//     * 自定义View内容处理
//     */
//    public class ViewPoiOverlay extends PoiOverlay {
//
//        public ViewPoiOverlay(AMap aMap, List<MarkerOptions> list) {
//            super(aMap, list,0);
//        }
//
//        @Override
//        protected BitmapDescriptor getBitmapDescriptor(int index) {
//            View view = null;
//            //这个R.layout.custom_view决定了使用那个View显示点标记
//            view = View.inflate(ShowGaoDeMaps.this, R.layout.custom_map_marker_view, null);
//            TextView textView = ((TextView) view.findViewById(R.id.title));
//            textView.setText(getTitle(index));
//
//            return  BitmapDescriptorFactory.fromView(view);
//        }
//    }
//
//
//    /**
//     * 转换GPS经纬度为LatLng
//     * @param longitude
//     * @param latitude
//     * @return
//     */
//    @Override
//    public LatLng getLaLng(double longitude, double latitude) {
//        if (latitude > 53.55 || latitude <3.86 || longitude>135.05 ||longitude<73.66) {
////            LogUtil.d("纬度"+latitude+","+"经度"+longitude);
////            ToastUtil.ShowNowMsg(getContext(),"经纬度错误:"+longitude+","+latitude);
//            return null;
//        }
//        LatLng latlng1 = new LatLng(latitude,longitude);
//        CoordinateConverter converter  = new CoordinateConverter();
//        // CoordType.GPS 待转换坐标类型
//        converter.from(CoordinateConverter.CoordType.GPS);
//        // sourceLatLng待转换坐标点
//        converter.coord(latlng1);
//        // 执行转换操作
//        return converter.convert();
//    }
//
//}
